package com.ruoyi.system.domain.api;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 币种配置对象 w_coin
 * 
 * @author ruoyi
 * @date 2022-04-22
 */
public class WCoin extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 币种类型 1为比特系 2 为以太坊系列 */
    @Excel(name = "币种类型 1为比特系 2 为以太坊系列")
    private String coinType;

    /** 币种名称 */
    @Excel(name = "币种名称")
    private String coinName;

    /** 简称 */
    @Excel(name = "简称")
    private String shortName;

    /** 币种图片 */
    @Excel(name = "币种图片")
    private String coinImg;

    /** 超过多少数量转入冷钱包 */
    @Excel(name = "超过多少数量转入冷钱包")
    private BigDecimal outQtyToColdAddress;

    /** 合约地址 */
    @Excel(name = "合约地址")
    private String contract;

    /** 币种精度 以太坊系列才有 */
    @Excel(name = "币种精度 以太坊系列才有")
    private Long coinDecimal;

    /** 允许充值 0：否 1：是 */
    @Excel(name = "允许充值 0：否 1：是")
    private Long allowRecharge;

    /** 允许提币 0：否 1：是 */
    @Excel(name = "允许提币 0：否 1：是")
    private Long allowWithdraw;

    /** 是否允许兑换 */
    @Excel(name = "是否允许兑换")
    private Long allowExchange;

    /** 对外转出手续费 */
    @Excel(name = "对外转出手续费")
    private BigDecimal outWithdrawFee;

    /** 提币最大限制 */
    @Excel(name = "提币最大限制")
    private BigDecimal maxOutQty;

    /** 提币最小限制 */
    @Excel(name = "提币最小限制")
    private BigDecimal minOutQty;

    /** 预警余额 */
    @Excel(name = "预警余额")
    private BigDecimal warningQty;

    /** 超过多少转入平台主地址 */
    @Excel(name = "超过多少转入平台主地址")
    private BigDecimal outQtyToMainAddress;

    /** 最小充值数量 */
    @Excel(name = "最小充值数量")
    private BigDecimal minRechargeQty;

    /** 同步到的区块高度 */
    @Excel(name = "同步到的区块高度")
    private Long syncBlockNumber;

    /** 确认数 */
    @Excel(name = "确认数")
    private Long confirmationsNum;

    /** 是否显示 */
    @Excel(name = "是否显示")
    private Integer isShow;

    /** 是否允许内转 0否 1可 */
    @Excel(name = "是否允许内转 0否 1可")
    private Long allowTransfer;

    /** 对内转账手续费 */
    @Excel(name = "对内转账手续费")
    private BigDecimal inWithdrawFee;

    /** 内部转账手续费 */
    @Excel(name = "内部转账手续费")
    private BigDecimal allowTransferFee;

    /** 单笔转账最小金额 */
    @Excel(name = "单笔转账最小金额")
    private BigDecimal allowTransferMin;

    /** 币种排序  针对获取地址   */
    @Excel(name = "币种排序  针对获取地址  ")
    private Integer sort;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setCoinType(String coinType) 
    {
        this.coinType = coinType;
    }

    public String getCoinType() 
    {
        return coinType;
    }
    public void setCoinName(String coinName) 
    {
        this.coinName = coinName;
    }

    public String getCoinName() 
    {
        return coinName;
    }
    public void setShortName(String shortName) 
    {
        this.shortName = shortName;
    }

    public String getShortName() 
    {
        return shortName;
    }
    public void setCoinImg(String coinImg) 
    {
        this.coinImg = coinImg;
    }

    public String getCoinImg() 
    {
        return coinImg;
    }
    public void setOutQtyToColdAddress(BigDecimal outQtyToColdAddress) 
    {
        this.outQtyToColdAddress = outQtyToColdAddress;
    }

    public BigDecimal getOutQtyToColdAddress() 
    {
        return outQtyToColdAddress;
    }
    public void setContract(String contract) 
    {
        this.contract = contract;
    }

    public String getContract() 
    {
        return contract;
    }
    public void setCoinDecimal(Long coinDecimal) 
    {
        this.coinDecimal = coinDecimal;
    }

    public Long getCoinDecimal() 
    {
        return coinDecimal;
    }
    public void setAllowRecharge(Long allowRecharge) 
    {
        this.allowRecharge = allowRecharge;
    }

    public Long getAllowRecharge() 
    {
        return allowRecharge;
    }
    public void setAllowWithdraw(Long allowWithdraw) 
    {
        this.allowWithdraw = allowWithdraw;
    }

    public Long getAllowWithdraw() 
    {
        return allowWithdraw;
    }
    public void setAllowExchange(Long allowExchange) 
    {
        this.allowExchange = allowExchange;
    }

    public Long getAllowExchange() 
    {
        return allowExchange;
    }
    public void setOutWithdrawFee(BigDecimal outWithdrawFee) 
    {
        this.outWithdrawFee = outWithdrawFee;
    }

    public BigDecimal getOutWithdrawFee() 
    {
        return outWithdrawFee;
    }
    public void setMaxOutQty(BigDecimal maxOutQty) 
    {
        this.maxOutQty = maxOutQty;
    }

    public BigDecimal getMaxOutQty() 
    {
        return maxOutQty;
    }
    public void setMinOutQty(BigDecimal minOutQty) 
    {
        this.minOutQty = minOutQty;
    }

    public BigDecimal getMinOutQty() 
    {
        return minOutQty;
    }
    public void setWarningQty(BigDecimal warningQty) 
    {
        this.warningQty = warningQty;
    }

    public BigDecimal getWarningQty() 
    {
        return warningQty;
    }
    public void setOutQtyToMainAddress(BigDecimal outQtyToMainAddress) 
    {
        this.outQtyToMainAddress = outQtyToMainAddress;
    }

    public BigDecimal getOutQtyToMainAddress() 
    {
        return outQtyToMainAddress;
    }
    public void setMinRechargeQty(BigDecimal minRechargeQty) 
    {
        this.minRechargeQty = minRechargeQty;
    }

    public BigDecimal getMinRechargeQty() 
    {
        return minRechargeQty;
    }
    public void setSyncBlockNumber(Long syncBlockNumber) 
    {
        this.syncBlockNumber = syncBlockNumber;
    }

    public Long getSyncBlockNumber() 
    {
        return syncBlockNumber;
    }
    public void setConfirmationsNum(Long confirmationsNum) 
    {
        this.confirmationsNum = confirmationsNum;
    }

    public Long getConfirmationsNum() 
    {
        return confirmationsNum;
    }
    public void setIsShow(Integer isShow) 
    {
        this.isShow = isShow;
    }

    public Integer getIsShow() 
    {
        return isShow;
    }
    public void setAllowTransfer(Long allowTransfer) 
    {
        this.allowTransfer = allowTransfer;
    }

    public Long getAllowTransfer() 
    {
        return allowTransfer;
    }
    public void setInWithdrawFee(BigDecimal inWithdrawFee) 
    {
        this.inWithdrawFee = inWithdrawFee;
    }

    public BigDecimal getInWithdrawFee() 
    {
        return inWithdrawFee;
    }
    public void setAllowTransferFee(BigDecimal allowTransferFee) 
    {
        this.allowTransferFee = allowTransferFee;
    }

    public BigDecimal getAllowTransferFee() 
    {
        return allowTransferFee;
    }
    public void setAllowTransferMin(BigDecimal allowTransferMin) 
    {
        this.allowTransferMin = allowTransferMin;
    }

    public BigDecimal getAllowTransferMin() 
    {
        return allowTransferMin;
    }
    public void setSort(Integer sort) 
    {
        this.sort = sort;
    }

    public Integer getSort() 
    {
        return sort;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("coinType", getCoinType())
            .append("coinName", getCoinName())
            .append("shortName", getShortName())
            .append("coinImg", getCoinImg())
            .append("outQtyToColdAddress", getOutQtyToColdAddress())
            .append("contract", getContract())
            .append("coinDecimal", getCoinDecimal())
            .append("allowRecharge", getAllowRecharge())
            .append("allowWithdraw", getAllowWithdraw())
            .append("allowExchange", getAllowExchange())
            .append("outWithdrawFee", getOutWithdrawFee())
            .append("maxOutQty", getMaxOutQty())
            .append("minOutQty", getMinOutQty())
            .append("warningQty", getWarningQty())
            .append("outQtyToMainAddress", getOutQtyToMainAddress())
            .append("minRechargeQty", getMinRechargeQty())
            .append("syncBlockNumber", getSyncBlockNumber())
            .append("confirmationsNum", getConfirmationsNum())
            .append("isShow", getIsShow())
            .append("allowTransfer", getAllowTransfer())
            .append("inWithdrawFee", getInWithdrawFee())
            .append("allowTransferFee", getAllowTransferFee())
            .append("allowTransferMin", getAllowTransferMin())
            .append("sort", getSort())
            .toString();
    }
}
